Distributed Memory Compiler Design for Sparse Problems 4
نویسندگان
چکیده
In this paper we describe and demonstrate a compiler and runtime support mechanism. The methods presented here are capable of solving a wide range of sparse and unstructured problems in scientific computing. The compiler takes as input a Fortran 77 program enhanced with specifications for distributing data, and the compiler outputs a message passing program that runs on a distributed memory computer. The runtime support for this compiler is a library of primitives designed to efficiently support irregular patterns of distributed array accesses and irregular distributed array partitions. We present a variety of Intel iPSC/860 performance results obtained through the use of this compiler. Computer Science Department Yale University New Haven CT 06520 2ICASE, NASA Langley Research Center Hampton VA 23665 SComputer ScienceDepartment RiceUniversityHouston Tx 77251 4Researchsupportedby th_ NationalAeronauticsand Space Administrationunder NASA contractNASI-18605 whilethe authorswere in residenceatICASE, Mail Stop 132C, NASA"Langley Re_carch Center,Hampton, VA 23665,an_..byNSF gr_ntA_C_ f 8819374,'_.
منابع مشابه
Distributed Memory Compiler Design for Sparse Problems
This paper addresses the issue of compiling concurrent loop nests in the presence of complicated array references and irregularly distributed arrays. Arrays accessed within loops may contain accesses that make it impossible to precisely determine the reference pattern at compile time. This paper proposes a run time support mechanism that is used e ectively by a compiler to generate e cient code...
متن کاملThe Dybbuk Runtime System
Over the past few years, we have developed methods that make it possible for a compiler to e ciently map many sparse and unstructured scienti c problems to scalable multiprocessor architectures. These methods are implemented using compiler embeddable runtime support procedures. These procedures can be thought of as supporting a type of weakly coherent distributed shared memory that can be close...
متن کاملAnalyzing Data Structures for Parallel Sparse Direct Solvers: Pivoting and Fill-in
This paper addresses the problem of the parallelization of sparse direct methods for the solution of linear systems in distributed memory multiprocessors. Sparse direct solvers include pivoting operations and suuer from ll-in, problems that turn the eecient par-allelization into a challenging task. We present some data structures to store the sparse matrices that permit to deal in a eecient way...
متن کاملDistributed Memory Compiler Methods for Irregular Problems - Data Copy Reuse and Runtime
This paper outlines two methods which we believe will play an important role in any distributed memory compiler able to handle sparse and unstructured problems. We describe how to link runtime partitioners to distributed memory compilers. In our scheme, programmers can implicitly specify how data and loop iterations are to be distributed between processors. This insulates users from having to d...
متن کاملDevelopment of High Performance Software Distributed Shared Memory System for Vector Processing
Parallel implementation of basic linear algbra operations for sparse matrix algorithms is a critical problem on shared memory architectures with finite memory bandwidth. We discuss the parallelizing methodology of vector processing and evaluate its performance on some commercially available shared memory systems. From the results of the evaluation, we hypothesize the most critical issue in buil...
متن کامل